System for synchronizing information

ABSTRACT

A system that incorporates teachings of the present disclosure may include, for example, a non-transitory computer-readable storage medium operating in a mobile device server having computer instructions to execute a web server application at the mobile device server. The web server application can be operable to detect a media resource center while roaming in a communication zone of the media resource center, and to transmit a pairing key to the media resource center. The web server application can be further operable to receive authorization from the media resource center to synchronize differences between content stored in the media resource center and content stored in the mobile device server responsive to the media resource center validating the pairing key. Other embodiments are disclosed.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of and claims priority to U.S. patentapplication Ser. No. 13/910,898 filed Jun. 5, 2013 (now U.S. PatentPublication No. 2013/0275562), which is a continuation of U.S. patentapplication Ser. No. 12/896,746 filed Oct. 1, 2010 (now U.S. Pat. No.8,478,905), all of which are incorporated herein by reference in theirentirety.

FIELD OF THE DISCLOSURE

The present disclosure relates generally to a system for synchronizinginformation.

BACKGROUND

Media communication systems such as interactive television systems candeliver media content to media processors such as set-top boxes.Generally, media content can be broadcast by these systems and deliveredaccording to the type of services that users have subscribed to. Ininteractive media communication systems, users can also request serviceson demand. Portable media devices such as mobile phones or media playerscan be adapted to communicate with media processors over a wirelessmedium.

BRIEF DESCRIPTION OF THE DRAWINGS

FIGS. 1-2 depict illustrative embodiments of communication systems thatprovide media services;

FIG. 3 depicts an illustrative embodiment of a portal that can interactwith the communication systems of FIGS. 1-2;

FIG. 4 depicts an illustrative embodiment of a communication device thatcan be utilized in the communication systems of FIGS. 1-2;

FIG. 5 depicts an illustrative embodiment of a system with computing andmedia resources;

FIGS. 6-10 depict illustrative embodiments of methods operating inportions of the systems and components of FIGS. 1-5; and

FIG. 11 is a diagrammatic representation of a machine in the form of acomputer system within which a set of instructions, when executed, cancause the machine to perform any one or more of the methodologiesdiscussed herein.

DETAILED DESCRIPTION

The present disclosure describes, among other things, illustrativeembodiments of a mobile device server for establishing communicationsand exchanging messages with a media resource center that managesresources capable of supplying media content of various forms to themobile device server. The mobile device server can include a web serverapplication operating therein to enable utilization of resources of themedia resource center. The mobile device server can also be operable tosynchronize its content and content status with content and trackingstatus updates in the media resource center responsive to supplying apairing key.

One embodiment of the present disclosure can include a portablecommunication device having a controller to execute a web serverapplication in the portable communication device. The web serverapplication can be operable to detect a media resource center whenroaming into a communication zone of the media resource center, and totransmit a pairing key to the media resource center to enablecommunications with the media resource center. The web serverapplication can be further operable to establish communications with themedia resource center responsive to a validation of the pairing key, andto detect differences between content tracked and/or stored in the mediaresource center and content tracked and/or stored in the portablecommunication device. Responsive to the detection, the web serverapplication can be operable to synchronize differences between contentstored in the media resource center and content stored in the portablecommunication device.

One embodiment of the present disclosure includes a non-transitorycomputer-readable storage medium operating in a mobile device serverhaving computer instructions to execute a web server application at themobile device server. The web server application can be operable todetect a media resource center while roaming in a communication zone ofthe media resource center, and to transmit a pairing key to the mediaresource center. The web server application can be further operable toreceive authorization from the media resource center to synchronizedifferences between content stored in the media resource center andcontent stored in the mobile device server responsive to the mediaresource center validating the pairing key.

One embodiment of the present disclosure includes a resource controlmanager having a controller to manage a plurality of resourcescommunicatively coupled to the resource control manager and to receivean identifier from a web server application operating in a mobile deviceserver. The controller can be further operable to identify a servicegrade from the identifier, and to enable the mobile device server tosynchronize content stored in the mobile device server with contentstored in one or more resources selected by the resource control managerfrom the plurality of resources according to the service grade.

FIG. 1 depicts an illustrative embodiment of a first communicationsystem 100 for delivering media content. The communication system 100can represent an Internet Protocol Television (IPTV) media system. TheIPTV media system can include a super head-end office (SHO) 110 with atleast one super headend office server (SHS) 111 which receives mediacontent from satellite and/or terrestrial communication systems. In thepresent context, media content can represent audio content, moving imagecontent such as videos, still image content, and combinations thereof.The SHS server 111 can forward packets associated with the media contentto one or more video head-end servers (VHS) 114 via a network of videohead-end offices (VHO) 112 according to a multicast communicationprotocol.

The VHS 114 can distribute multimedia broadcast content via an accessnetwork 118 to commercial and/or residential buildings 102 that house agateway 104 (such as a residential or commercial gateway). The accessnetwork 118 can represent a group of digital subscriber line accessmultiplexers (DSLAMs) located in a central office or a service areainterface that provide broadband services over fiber optical links orcopper twisted pairs 119 to buildings 102. The gateway 104 can usecommunication technology to distribute broadcast signals to mediaprocessors 106 such as Set-Top Boxes (STBs) which in turn presentbroadcast channels to media devices 108 such as computers or televisionsets managed in some instances by a media controller 107 (such as aninfrared or RF remote control).

The gateway 104, the media processors 106, and media devices 108 canutilize tethered communication technologies (such as coaxial, powerline,or phone line wiring) or can operate over a wireless access protocolsuch as Wireless Fidelity (WiFi), Bluetooth, Zigbee, or other present ornext generation local or personal area wireless network technologies. Byway of these interfaces, unicast communications can also be invokedbetween the media processors 106 and subsystems of the IPTV media systemfor services such as video-on-demand (VoD), browsing an electronicprogramming guide (EPG), or other infrastructure services.

A satellite broadcast television system 129 can also be used in themedia system of FIG. 1. The satellite broadcast television system 129can be overlaid, operably coupled with, or replace the IPTV system asanother representative embodiment of communication system 100. In thisembodiment, signals transmitted by a satellite 115 carrying mediacontent can be received by a satellite dish receiver 131 coupled to thebuilding 102. Modulated signals received by the satellite dish receiver131 can be transferred to the media processors 106 for demodulating,decoding, encoding, and/or distributing broadcast channels to the mediadevices 108. The media processors 106 can be equipped with a broadbandport to the ISP network 132 to enable interactive services such as VoDand EPG as described above.

In yet another embodiment, an analog or digital cable broadcastdistribution system such as cable TV system 133 can be overlaid,operably coupled with, or replace the IPTV system and/or the satelliteTV system as another representative embodiment of communication system100. In this embodiment, the cable TV system 133 can also provideInternet, telephony, and interactive media services.

It is contemplated that the present disclosure can apply to any presentor next generation over-the-air and/or landline media content servicessystem.

Some of the network elements of the IPTV media system can also becoupled to one or more non-portable computing devices 130, a portion ofwhich can operate as a web server for providing portal services over anInternet Service Provider (ISP) network 132 to wireline media devices108 or wireless communication devices 116.

Multiple forms of media services can be offered to media devices overlandline technologies such as those described above. Additionally, mediaservices can be offered to media devices by way of a wireless accessbase station 117 operating according to wireless access protocols suchas Wireless Fidelity (WiFi), or cellular communication technologies suchas Global System for Mobile or GSM, Code Division Multiple Access orCDMA, Time Division Multiple Access or TDMA, Universal MobileTelecommunications or UMTS, World interoperability for Microwave WiMAX,Software Defined Radio or SDR, Long Term Evolution or LTE, and so on).Other present and next generation wide area wireless networktechnologies are contemplated by the present disclosure.

System 100 can also provide for all or a portion of the computingdevices 130 to function as a remote server (herein referred to as server130). The server 130 can use computing and software technology 166 toperform the function of processing synchronization requests 163initiated by a web server application 162 operating in portablecommunication devices such as those shown in reference 108 or 116(herein referred to as mobile device servers). Server 130 can also beused to control operations of a resource control manager 164 which canoperate from the residential gateway 104, the media processor 106 orother computing devices in building 102 for managing resources of amedia resource center 170. Another aspect of the server 130 can be acontent provider system 172 which can be used for distributing mediacontent to the communication devices of FIG. 1.

It is further contemplated by the present disclosure that the server 130can also represent a billing system 174 for billing a subscriber accountwhen applications are requested by the mobile device servers and/or forbilling the subscriber account when resources of the media resourcecenter are requested by mobile device servers. The content providersystem 172 and the billing system 174 can be managed by a serviceprovider of the media communication system 100 of FIG. 1, or by thirdparties entities.

Illustrative embodiments of methods that can operate in portions of theaforementioned devices and systems of FIG. 1 are described below.

FIG. 2 depicts an illustrative embodiment of a communication system 200employing an IP Multimedia Subsystem (IMS) network architecture tofacilitate the combined services of circuit-switched and packet-switchedsystems. Communication system 200 can be overlaid or operably coupledwith communication system 100 as another representative embodiment ofcommunication system 100.

Communication system 200 can comprise a Home Subscriber Server (HSS)240, a tElephone NUmber Mapping (ENUM) server 230, and other commonnetwork elements of an IMS network 250. The IMS network 250 canestablish communications between IMS compliant communication devices(CD) 201, 202, Public Switched Telephone Network (PSTN) CDs 203, 205,and combinations thereof by way of a Media Gateway Control Function(MGCF) 220 coupled to a PSTN network 260. The MGCF 220 is not used whena communication session involves IMS CD to IMS CD communications. Acommunication session involving at least one PSTN CD utilizes the MGCF220.

IMS CDs 201, 202 can register with the IMS network 250 by contacting aProxy Call Session Control Function (P-CSCF) which communicates with acorresponding Serving CSCF (S-CSCF) to register the CDs with at the HSS240. To initiate a communication session between CDs, an originating IMSCD 201 can submit a Session Initiation Protocol (SIP INVITE) message toan originating P-CSCF 204 which communicates with a correspondingoriginating S-CSCF 206. The originating S-CSCF 206 can submit queries tothe ENUM system 230 to translate an E.164 telephone number in the SIPINVITE to a SIP Uniform Resource Identifier (URI) if the terminatingcommunication device is IMS compliant. The originating S-CSCF 206 cansubmit the SIP INVITE message to an application server (AS) such asreference 217 that can provide a variety of services to IMS subscribers.For example, the application server 217 can be used to performoriginating treatment functions on the calling party number received bythe originating S-CSCF 206 in the SIP INVITE message. Originatingtreatment functions can include determining whether the calling partynumber has international calling services, and/or is requesting specialtelephony features (e.g., *72 forward calls, *73 cancel call forwarding,*67 for caller ID blocking, and so on).

Additionally, the originating S-CSCF 206 can submit queries to the ENUMsystem 230 to translate an E.164 telephone number in the SIP INVITE to aSIP Uniform Resource Identifier (URI) if the terminating communicationdevice is IMS compliant. The SIP URI can be used by an InterrogatingCSCF (I-CSCF) 207 to submit a query to the HSS 240 to identify aterminating S-CSCF 214 associated with a terminating IMS CD such asreference 202. Once identified, the I-CSCF 207 can submit the SIP INVITEto the terminating S-CSCF 214. The terminating S-CSCF 214 can thenidentify a terminating P-CSCF 216 associated with the terminating CD202. The P-CSCF 216 then signals the CD 202 to establish Voice overInternet Protocol (VoIP) communication services, thereby enabling thecalling and called parties to engage in voice and/or datacommunications.

If the terminating communication device is instead a PSTN CD such asreferences 203 or 205, the ENUM system 230 can respond with anunsuccessful address resolution which can cause the originating S-CSCF206 to forward the call to the MGCF 220 via a Breakout Gateway ControlFunction (BGCF) 219. The MGCF 220 can then initiate the call to theterminating PSTN CD over the PSTN network 260 to enable the calling andcalled parties to engage in voice communications.

The aforementioned communication process is symmetrical. Accordingly,the terms “originating” and “terminating” in FIG. 2 are interchangeable.It is further noted that communication system 200 can be adapted tosupport video conferencing. In addition, communication system 200 can beadapted to provide the IMS CDs 201, 203 with the multimedia and Internetservices of communication system 100.

System 200 can include or otherwise be coupled with computing devices130 of FIG. 1 for purposes similar to those described above. Computingdevices 130 can function as a remote server 166, content provider system172, and billing system 174. It is further contemplated by the presentdisclosure that a web server application 162 can operate from any of thecommunication devices (e.g., references 201, 202, 203, and 205) depictedin FIG. 2. It is also contemplated that these devices can communicatewith a resource control manager 164 operating from, for example, the AS217, to gain access to resources of the media resource center 170, andamong other functions, perform a synchronization process 163 forsynchronizing content updates in the IMS system 200. Illustrativeembodiments of methods that can operate in portions of the devices ofFIG. 2 are described below.

FIG. 3 depicts an illustrative embodiment of a portal 302 which canoperate from the computing devices 130 of the communication system 100illustrated in FIG. 1. The portal 302 can be used for managing servicesof communication systems 100-200. The portal 302 can be accessed by aUniform Resource Locator (URL) with a Internet browser such asMicrosoft's Internet Explorer™ using an Internet-capable communicationdevice such as those described for FIGS. 1-2. The portal 302 can beconfigured, for example, to access a media processor 106 and servicesmanaged thereby such as a Digital Video Recorder (DVR), a VoD catalog,an EPG, or a personal catalog (such as personal videos, pictures, audiorecordings, etc.) stored in the media processor 106. The portal 302 canalso be used for provisioning IMS services described earlier,provisioning Internet services, provisioning cellular phone services,and so on.

It is contemplated by the present disclosure that the portal 302 canfurther be utilized to manage and provision software applications 162,163, 164, 166, and 170 of a mobile device server, a resource controlmanager, a remote server, and a media resource center, respectively, asdescribed earlier. Illustrative embodiments of methods that can operatein portions of the portal 302 of FIG. 3 are described below.

FIG. 4 depicts an exemplary embodiment of a communication device 400.Communication device 400 can serve in whole or in part as anillustrative embodiment of the devices depicted in FIGS. 1-2. Thecommunication device 400 can comprise a wireline and/or wirelesstransceiver 402 (herein transceiver 402), a user interface (UI) 404, apower supply 414, a location receiver 416, and a controller 406 formanaging operations thereof. The transceiver 402 can support short-rangeor long-range wireless access technologies such as Bluetooth, WiFi,Digital Enhanced Cordless Telecommunications (DECT), or cellularcommunication technologies, just to mention a few. Cellular technologiescan include, for example, CDMA-1X, UMTS/HSDPA, GSM/GPRS, TDMA/EDGE,EV/DO, WiMAX, SDR, LTE, as well as other next generation cellularwireless communication technologies as they arise. The transceiver 402can also be adapted to support circuit-switched wireline accesstechnologies (such as PSTN), packet-switched wireline accesstechnologies (such as TCPIP, VoIP, etc.), and combinations thereof.

The UI 404 can include a depressible or touch-sensitive keypad 408 witha navigation mechanism such as a roller ball, a joystick, a mouse, or anavigation disk for manipulating operations of the communication device400. The keypad 408 can be an integral part of a housing assembly of thecommunication device 400 or an independent device operably coupledthereto by a tethered wireline interface (such as a USB cable) or awireless interface supporting for example Bluetooth. The keypad 408 canrepresent a numeric dialing keypad commonly used by phones, and/or aQwerty keypad with alphanumeric keys. The UI 404 can further include adisplay 410 such as monochrome or color LCD (Liquid Crystal Display),OLED (Organic Light Emitting Diode) or other suitable display technologyfor conveying information to an end user of the communication device400. In an embodiment where the display 410 is touch-sensitive, aportion or all of the keypad 408 can be presented by way of the display410.

The UI 404 can also include an audio system 412 that utilizes commonaudio technology for conveying low volume audio (such as audio heardonly in the proximity of a human ear) and high volume audio (such asspeakerphone for hands free operation). The audio system 412 can furtherinclude a microphone for receiving audible signals of an end user. Theaudio system 412 can also be used for voice recognition applications.The UI 404 can further include an image sensor 413 such as a chargedcoupled device (CCD) camera for capturing still or moving images.

The power supply 414 can utilize power management technologies such asreplaceable and rechargeable batteries, supply regulation technologies,and charging system technologies for supplying energy to the componentsof the communication device 400 to facilitate long-range or short-rangeportable applications. The location receiver 416 can utilize locationtechnology such as a global positioning system (GPS) receiver foridentifying a location of the communication device 400 based on signalsgenerated by a constellation of GPS satellites, thereby facilitatinglocation services such as navigation.

The communication device 400 can use the transceiver 402 to alsodetermine a proximity to a cellular, WiFi or Bluetooth access point bycommon sensing techniques such as utilizing a received signal strengthindicator (RSSI) and/or a signal time of arrival (TOA) or time of flight(TOF). The controller 406 can utilize computing technologies such as amicroprocessor, a digital signal processor (DSP), and/or a videoprocessor with associated storage memory such a Flash, ROM, RAM, SRAM,DRAM or other storage technologies.

The communication device 400 can be adapted to perform the functions ofthe media processor 106, the media devices 108, or the portablecommunication devices 116 of FIG. 1, as well as the IMS CDs 201-202 andPSTN CDs 203-205 of FIG. 2. It will be appreciated that thecommunication device 400 can also represent other common devices thatcan operate in communication systems 100-200 of FIGS. 1-2 such as agaming console and a media player.

It is further contemplated by the present disclosure that thecommunication device 400 can operate as a media resource center, aresource control manager, a mobile device server, a remote server, acontent provider system, or a billing system as described earlier. Thecontroller 406 can be adapted in various embodiments to perform thefunctions 162, 163, 164, 166, 170, 172, and 174 of the mobile deviceserver, resource control manager, remote server, media resource center,content provider system, and billing system, respectively. Illustrativeembodiments of methods that can operate in portions of the communicationdevice 400 of FIG. 4 are described below.

FIG. 5 depicts an illustrative embodiment of a system 500 that canoperate according to methods 600-900 described in FIGS. 6-9. System 500can comprise a mobile device server 504 that can roam into a building502 (residence or commercial establishment). The mobile device server504 can represent a portable telephone such as a cellular telephone or acordless telephone comprising in whole or in part the components of thecommunication device 400 shown in FIG. 4. The mobile device server 504can be a portable telephony device which is capable of executing a webserver application 505. Other embodiments of the mobile device server504 such as a Personal Digital Assistant (PDA), smart phone, or tablet(e.g., an iPAD™) adapted to execute a web server application 505 arecontemplated by the present disclosure. For illustration purposes, thepresent disclosure will make references to the components shown in FIG.4 when discussing the operations of the mobile device server 504.

A web server application 505 can represent a hypertext transfer protocol(HTTP) web server application 505 implemented in software, hardware orcombinations thereof operating from the controller 406 of the mobiledevice server 504. A web server application 505 can also be representedby a web server application used by a server or hosting computer system.Accordingly, multiple types of web server applications 505 operationalin the mobile device server 504 are contemplated by the presentdisclosure.

System 500 can further include a media processor 506 and a gateway 508that can provide wireless communication services to the media processor506 and other devices in the building 502 such as a computing device520, a gaming console 516, and a resource control manager 518. Theresources in building 502 can collectively represent a media resourcecenter 530. The resource control manager 518 can be a standalonecomputing device as shown in FIG. 5. In another embodiment, the resourcecontrol manager 518 can be an integral part of the gateway 508. In yetanother illustrative embodiment, the functions of the resource controlmanager 518 can be distributed among several devices such as the gateway508 and computing device 520. The resource control manager 518 can beutilized to manage usage of media and computing resources of the mediaresource center 530 by the mobile device server 504.

System 500 can also comprise an ISP network 510 that provides privateand/or public Internet services to building 502. By way of the ISPnetwork 510, the resource control manager 518 can communicate with aremote server 512 for purposes of managing resources made available tothe mobile device server 504 as will be described below. A database 514can be communicatively coupled to the remote server 512 to provideresource management services to one or more resource control managers518 operating from a plurality buildings (only building 502 is shown inFIG. 5). The resource control manager 518 can be operable to access, byway of the ISP network 510, a billing system 542 communicatively coupledto a database 544. The billing system 542 can be utilized for applyingcharges to a subscriber account associated with the mobile device server504. The billing system 542 can be managed by a service provider of themedia communication systems 100-300 of FIGS. 1-3, or a third partyhaving a commercial arrangement with the service provider of systems100-300.

The mobile device server 504 can also be operable to access the ISPnetwork 510 by way of gateway 508 or by way of a long-range wirelesscommunication system such as a cellular or WiMAX communication system.The mobile device server 504 is operable to access the content providersystem 546 to request content stored in database 548 in the form ofsoftware applications and/or media content that can be downloaded to themobile device server 504 for presentation at the mobile device server504 or by way of one or more of the media resources of the mediaresource center 530. When a software application and/or media content isdownloaded to the mobile device server 504, a charge can be applied to asubscriber account.

FIGS. 6-9 depict illustrative embodiments of methods 600-900 that can beapplied to the operations of portions of the systems and devices ofFIGS. 1-5.

Method 600 depicts an illustrative embodiment for subscribing to mediaservices and for programming a mobile device server 504 with anidentifier (such as a pairing key described below) that identifies thesubscribed services. Method 600 can begin with step 602 in which aconsumer subscribes to one or more services of a media service provider.The media service provider can offer consumers interactive media andcommunication services such as shown in FIGS. 1-2, interactive portalservices such as shown in FIG. 3, and combinations thereof. Servicesoffered by the service provider can include without limitationinteractive TV (iTV) services, cellular phone services, Internetservices, landline voice communication services, portal services, aswell as other next generation media services.

A service provider can offer consumers grades of these services, whichan agent of the service provider can record in step 604 in asubscriber-created account. For example a service provider can offer aplurality of grades of iTV services (e.g., basic channels, upgrade tosports channels, upgrade to premium movie channels, etc.). The serviceprovider can also offer grades of services for cellular phone services(e.g., nationwide coverage, minute grades, data services, computertethering services, etc.). Internet services can also be graded byspeed, reliability, service and support (business vs. consumer grade),and so on. Landline voice services can also be graded by call plans suchas nationwide call plans, local call plans, international call plans,etc. Portal services can also be graded according to the capability ofthe portal to access resources of the consumer, the ability to viewmedia content as streamed data, the ability to share media content withfriends and family, and so on.

Collectively, all grades of service can be identified by a single gradeof service identifier (ID), or as a string of service grade IDs eachidentifying the grade of service of each service offered to asubscriber. Hence forth, the term service grade can represent a singleservice grade that collectively describes a family of service grades, orit can represent a sequence of service grades each describing arespective service.

Referring back to step 606 of FIG. 6, if a service provider system (suchas one of the computing devices 130 of FIG. 1) detects that thesubscriber has a mobile device server 504, or a mobile device server 504is offered to and accepted by the subscriber, the service providersystem can proceed to step 608 where it generates a pairing key whichcan be used to identify the service grade(s) of the subscriber. Thepairing key can be encrypted with proprietary technology, or can utilizepublic key infrastructure (PKI) technology. Alternatively, or incombination, the pairing key can comprise a personal identificationnumber (PIN), user name and password, or other forms of secureverification technology. The pairing key can be programmed in the mobiledevice server 504 at step 610. The programming step can occur while themobile device server 504 is provisioned at a retail store of the serviceprovider, over the air by way of a cellular network, or over anInternet-capable wireline interface. For security purposes, the pairingkey can be stored in a tamper-proof memory device such as a SubscriberIdentity Module, commonly referred to as a SIM card. If portability ofthe pairing key is undesirable, the pairing key can be stored in atamper-proof memory device integrated in the mobile device server 504.Other tamper-proof storage techniques can be used.

Method 700 depicts an illustrative embodiment for acquiring softwareapplications and/or content offered by a content provider system 546(shown in FIG. 5) by way of a mobile device server 504. The contentprovider managing the content provider system 546 and the serviceprovider managing the service provider system referred to in method 600can be the same entity, or can be an independent third party who has acommercial affiliation with the service provider of the systems in FIGS.1-3.

Method 700 can begin with step 702 in which the content provider system546 presents an assortment of applications/content to a mobile deviceserver 504 by way of, for example, an Internet browser operating fromthe mobile device server 504. A user of the mobile device server 504 canbrowse through software applications as well as media content and makeone or more selections by way of the UI 404 of the mobile device server404. Software applications in the present context can mean executablesoftware that can operate under the control of the web serverapplication 505 operating in the mobile device server 504. Theexecutable software can represent any type of software that can performfunctions of interest to the user of the mobile device server 504. Forexample, a software application can represent client software that canbe used to control the media processor 506, or the gaming console 516 inbuilding 502. Media content can represent audio content, visual content,or combinations thereof. When a selection is made in step 704, thecontent provider system 546 can be adapted to extract the selectedsoftware application and/or content from database 548 and download acopy to the mobile device server 504 with a pairing key in step 706 overa wireless or a wireline interface.

The pairing key of method 600 differs from the pairing key of method700. Specifically, the pairing key referred to in method 700 can be usedfor authenticating the software application and/or media content, whilethe pairing key of method 600 can be used for authenticating the user ofthe mobile device server 504 and/or for defining grade(s) of servicesthat a user of the mobile device server 504 has subscribed to. Bothpairing keys can be generated by the service provider of the systems ofFIGS. 1-3. The pairing key of method 700 can be utilized by the serviceprovider to prevent unauthorized use of software applications and/ormedia content with any of the resources (e.g., media processor 506,gaming console 516, etc.) supplied to subscribers of the serviceprovider.

Referring back to the steps of method 700 in FIG. 7, once the softwareapplication and/or media content has been downloaded to the mobiledevice server 504 at step 706, the billing system 542 of FIG. 5 can beadapted to identify at step 708 a subscriber account associated with themobile device server 504 and identify in step 710 a service grade (orgrades) from the information retrieved from the subscriber account. Atstep 712, the billing system 542 can be further adapted to determinewhether to apply a charge to the subscriber account according to theservice grade(s). For example, the service provider can offer a servicegrade in which the subscriber can download unlimited softwareapplications or media content without a charge. A different servicegrade may allow some types of software applications and/or media contentto be downloaded free of charge, while for others the subscriber wouldbe charged a fee. It is contemplated that the service provider of thesystems of FIGS. 1-3 can define multiple service grades each withdiffering fee policies.

If at step 712 the billing system 542 determines from the service gradethat a charge is to be applied to the subscriber's account, then thebilling system 542 proceeds to step 714 where it applies a charge to thesubscriber's account. If the content provider system 546 is managed by athird party having a commercial arrangement with the service provider,then the billing system 542 can also be adapted at step 716 to share aportion of the revenue from the charge applied to the subscriber accountwith the content provider. If the content provider and the serviceprovider are the same entity, then step 716 can be skipped.

It is contemplated that method 700 can be modified in numerous ways toaccomplish the same or similar tasks. For instance, sharing a portion ofthe charges applied to subscriber accounts with the content provider canbe implemented by other systems of FIGS. 1-3. For example, the contentprovider system 546 can be adapted to apply charges to a subscriber'saccount which in turn triggers systems of the service provider to submitan electronic payment to the content provider. The electronic paymentcan represent a portion of revenue from the charged subscriber fees inaccordance with a commercial arrangement between the service providerand the content provider. It is further contemplated that in thisarrangement the subscriber can be made to believe that the contentprovider and the service provider are one and the same since thesubscriber only sees billing statements from the service provider withno indication that the content provider is a third party having acommercial arrangement with the service provider.

Methods 800-1000 depict illustrative embodiments in which a mobiledevice server 504 acquires access to resources in the media resourcecenter 530 of building 502.

Method 800 begins with step 802 in which the mobile device server 504 ofFIG. 5 executes a web server application 505. Step 802 can be initiatedby a user manipulating the user interface of the mobile device server504. Alternatively, the web server application 505 can be automaticallyinitiated by other triggers such as time of day, a user profile, orcombinations thereof. The web server application 505 in the mobiledevice server 504 can be operable to detect in step 804 a resourcecontrol manager 518 when roaming into a communication zone of theresource control manager 518. The communication range of thecommunication zone can be driven by the wireless service and technologycharacteristics of the gateway 508. Step 804 can represent the webserver application 505 of the mobile device server 504 scanning formedia resources in building 502 by way of gateway 508 providing accessto a wireless network. The gateway 508 can be a WiFi router and modemcombination which is communicatively coupled to the ISP network 510 byway of a wired interface such as a coaxial cable or telephone wireinterface.

The web server application 505 of the mobile device server 504 can scanfor the presence of media resources such as the media processor 506 byrequesting information from the resource control manager 518. Theresource control manager 518 can transmit to the mobile device server504 a list of the active devices on the WiFi network. Alternatively, orin combination, the web server application 505 of the mobile deviceserver 504 can transmit a broadcast message on the WiFi networkrequesting identification from the devices communicatively coupled tothe WiFi network. Other identification techniques are contemplated bythe present disclosure.

Once the resource control manager 518 has been discovered, the webserver application 505 can present the detected media resource(s) to auser over the UI 404 of the mobile device server 504. The user canmanipulate the UI 404 as previously described to indicate a desire toestablish communications with the resource control manager 518.Alternatively, or in combination, a need to establish communicationswith the resource control manager 518 can be detected from a priorhistory of user interactions, a profile established by the user of themobile device server 504 indicating a preference for establishingcommunications with the resource control manager 518, or other triggersthat may be definable by user behavior or user-established settings.

In step 806, the web server application 505 in the mobile device server504 can initiate a URL directed to the remote server 512 by way of thegateway 508. The following is an illustrative embodiment of a URL thatcan be initiated by the mobile device server 504:http://someServer.com/launchApp?special_app=http://<IP address of MDSx.x.x.x>/mrml.xml. The URL can include a domain name of the remoteserver 512 and instructions to launch a specific software applicationexecutable by the web server application 505 in the mobile device server504. The URL can also include an IP address of the mobile device server504 which can be used to launch the software application. In step 808,the gateway 508 can attach localization information in the form ofheader information into an IP header source for network addresstranslation or an HTTP header prior to forwarding the URL to the remoteserver 512.

The server 512 can receive the URL message by way of the ISP network 510of FIG. 5. The server 512 can in turn identify in step 810 from the HTTPheader the IP address of the gateway 508. The server 512 can alsoidentify from the URL message the software application to be invoked bythe mobile device server 504 (e.g.,special_app_to_enable_comm_with_resource_ctrl_mgr), and the IP addressassociated with the software application which can be used to identifythe software application and/or the mobile device server 504.

In step 812, the remote server 512 can authenticate the request from themobile device server 504 using the IP address of the mobile deviceserver 504 or some other identifier added to the URL message (e.g., MACaddress of the mobile device server 504). If the server 512 does notrecognize the mobile device server 504 in step 814, method 800 cancease. Otherwise, if authentication is successful, the server 512 canproceed to step 816. Authentication of the mobile device server 504 canbe delegated to the resource control manager 518, in which case steps812 and 814 may be bypassed.

At step 816, the server 512 can be operable to locate the resourcecontrol manager 518 and media resources managed thereby according to thedetected IP address of the gateway 508. The server 512 can locate theresource control manager 518 from a look-up table in a database 514operating, for example, as a Domain Name Server (DNS), a subscriberdatabase, or combinations thereof. Once the resource control manager 518and resources managed thereby have been identified, the server 512 cantransmit to the resource control manager 518 in step 818 a new URLmessage to invoke the software application in the mobile device server504 according to the IP address of the mobile device server 504. Thefollowing is an illustrative embodiment of a URL message that can betransmitted to the resource control manager 518: http://<IP address ofMDS x.x.x.x>/mrml.xml.

Once the resource control manager 518 invokes this URL in step 820, theweb server application 505 in the mobile device server 504 can beoperable to execute the software application(special_app_to_enable_comm_with_resource_ctrl_mgr) in step 822 toestablish an initial state of communications with the resource controlmanager 518. Authentication of the mobile device server 504 can takeplace in steps 824-826 prior to enabling communication services betweenthe mobile device server 504 and resources managed by the resourcecontrol manager 518. In step 824, the mobile device server 504 cantransmit authentication data to the resource control manager 518. Theauthentication data can comprise, for example, the pairing keyprogrammed in the mobile device server 504 by the service provider atstep 610. As noted earlier, the pairing key can be encrypted data, a PKIkey, a PIN, user name and password, or other forms of secureverification technology. The pairing key can be utilized to preventmobile device servers 504 from utilizing media resources of thecommunication systems of FIGS. 1-3 unless authorized by the serviceprovider of these systems.

If the authentication data is invalid or not recognized, method 800ceases at step 826 and may submit an error message to the user of themobile device server 504 (e.g., “You are not authorized to pair yourdevice with the media resources in this residence”). Otherwise, theresource control manager 518 proceeds to step 902 of FIG. 9 where itidentifies service grades from the pairing key. The resource controlmanager 518 can maintain a database of pairing keys and theircorresponding service grade(s) from prior interactions, or can submit arequest to a server of one of the communication systems of FIGS. 1-2 orFIG. 5 (such as server 512 or billing system 542) to request anidentification of the service grade(s) assigned to the mobile deviceserver 504 according to the supplied pairing key. The service grade(s)can identify the extent of services offered to the mobile device server504, and the resources that can be made available to the mobile deviceserver 504 in building 502.

Suppose, for example, that a service provider offered three servicegrades branded as Platinum, Gold and Bronze. Platinum services can forexample represent all media services and resources (e.g., computer 520,media processor 506, and gaming console 516) which can be made availableto the mobile device server 504. Gold services can represent lessservices and resources than those offered in a Platinum plan, but moreservices and resources than those offered in a Bronze plan. The serviceprovider of the communication systems of FIGS. 1-3 can utilize morecomplex service schemes by defining subservice levels of a particularservice category. For example, Platinum services can have sublevelservice grades for the media processor 506 (e.g., premium channels vs.basic channels), the gaming console 516 (e.g., unlimited access to gamesvs a limited subset of games with the option to purchase others in anon-demand model), and the computing device 520 (e.g., various levels ofaccess to CPU resources, and memory storage). Multiple types of servicegrades can be defined by the service provider.

Once the service grade(s) have been identified, the resource controlmanager 518 can supply the pairing key to, for example, the billingsystem 542 and inform the billing system 542 that the mobile devicesever 504 has requested certain resources of the media resource center530. Based on the resources requested by the mobile device server 504and the service grades associated with the mobile device server 504(identifiable by the pairing key), the billing system 542 can be adaptedto determine at step 904 whether to apply a charge for providing themobile device server 504 with access to the requested resources. If theservice grade(s) allow for free access to the resources in building 502then step 906 can be skipped. Otherwise, the billing system 542 can beadapted to apply a charge at step 906 to a subscriber account associatedwith the mobile device server 504 according to the resources requestedby the mobile device server 504.

At step 908, the mobile device server 504 can be adapted to provide theresource manager 518 with the pairing key of the software applicationand/or media content that the mobile device server 504 wants to utilizein association with the requested resources. For example, the mobiledevice server 504 may have a software application which may require theuse of the gaming console 516 or the media processor 506. Alternatively,or in combination, suppose the mobile device server 504 would like totransfer or process media content (e.g., a movie downloaded from thecontent provider system 546) at the media processor 506. In bothinstances, the pairing key supplied to the resource control manager 518at step 908 can be used to authenticate the software application and/orthe media content as being pre-screened and approved by the serviceprovider.

The resource control manager 518 can have a history of pairing keysassociated with software and/or content from prior interactions, or cancontact the remote server 512 to determine if the pairing key suppliedby the mobile device sever 504 is valid. The remote server 512 can havein its database 514 a copy of all the pairing keys supplied to thecontent provider system 546 in order to validate the use of a softwareapplication and/or media content with the media resource center 530 ofbuilding 502. If the remote server 512 validates the pairing key at step910, the resource control manager 518 can proceed to step 912, otherwiseit terminates interactions with the mobile device server 504. An errormessage can then be submitted to the user of the mobile device server504 (e.g., “You are not authorized to use the software application XXXor media content YYY with the resources in this residence”).

If the pairing key is valid, then the resource control manager 518 atstep 912 selects one or more resources which can be utilized by themobile device server 504 according to the service grade(s) assignedthereto. In step 914, the resource control manager 518 can also delegatemanagement of the selected resources to the mobile device server 504based on the service grade(s). In this embodiment, the mobile deviceserver 504 can be authorized to manage the selected resources withoutinterference by the resource control manager 518. If delegation isappropriate, the resource control manager 518 can inform the mobiledevice server 504 in step 916 that it is delegating management of theselected resources to the mobile device server 504.

To assist the mobile device server 504, the resource control manager 518can transmit to the mobile device server 504 in step 918 informationassociated with delegated resources to assist the mobile device server504 in managing these resources. The information can includeprovisioning data, service provider and subscriber usage policies,telemetry data, and other suitable information for managing theseresources. Provisioning data can represent an identification of servicesenabled and available for use by the mobile device server 504. Serviceprovider usage policies can define how these resources can be used bythe mobile device server 504 and other devices managed by the mobiledevice server 504.

For example, a service provider usage policy can identify digital rightsmanagement policies, Quality of Service policies, bandwidth managementpolicies, and so on. Subscriber policies can represent subscriber usagepreferences such as media content preferences, usage policies (time ofday, blocked periods, parental controls, etc.), load managementpolicies, and so on. Subscriber policies can be established through theportal services described in FIG. 3. For example, a web page can bepresented to a subscriber which identifies a list of customizableoptions to establish a resource management policy to be followed by theresource control manager 518 when enabling or delegating services to amobile device server 504.

Referring back to step 914, if delegation is not appropriate accordingto the service grade(s) of the subscriber, the resource control manager518 can proceed to step 920 where it determines if other mobile deviceservers 504 are present in the network established by the gateway 508.If only one mobile device server 504 is present, the resource controlmanager 518 can proceed to step 922 where the resource control manager518 assigns the selected resources to the mobile device server 504. Instep 924, the resource control manager 518 can transmit to the mobiledevice server 504 a usage policy summarizing the service provider andsubscriber usage policies previously described. From this point forward,the mobile device server 504 can begin to utilize the resources assignedin step 922.

Referring back to step 920, if the resource control manager 518 detectsthat more than one mobile device server 504 is requesting the sameresources, the resource control manager 518 can proceed to step 926where it can arbitrate between the detected mobile device servers 504.The arbitration process can prompt each user of the mobile deviceservers 504 to make concessions. Alternatively, or contemporaneously,the resource control manager 518 can address arbitration on the basis ofthe mobile device server 504 having the higher service grade (orsublevels of service grades). It is contemplated that any arbitrationtechnique can be applied in step 926.

Once arbitration has been completed, the resource control manager 518can proceed to step 928 where the resource control manager 518 assignsresources to each mobile device server 504 according to the arbitrationresults. The assignment can represent a distribution of resources withor without sharing of such resources between the mobile device servers504. For example, some resources might be shared between multiple mobiledevice servers 504 (e.g., a media processor 506) while others areassigned exclusively to one of the mobile device servers 504 (e.g.,gaming console 516). In step 930, the resource control manager 518 cantransmit to each mobile device server 504 a usage policy as previouslydescribed for the arbitrated resources.

Once the mobile device server 504 has access to resources, it canproceed to step 1002 of FIG. 10. In this step, the web serverapplication 505 can be adapted to scan the resources selected by theresource control manager 518 or the resources delegated to the mobiledevice server 504 to determine if content updates are present. A contentupdate can include without limitation changes in media files, changes inemail messages, changes in phone book contacts, changes in calendarentries, changes in user profiles, as well as other trackable content.Media files can represent personal videos, still pictures, audiorecordings, or other media content commonly recorded by family members.Email messages can include post office protocol (POP) email messages,Internet message access protocol (IMAP) email messages, MicrosoftExchange Server™ email messages, or other present or next generationemail solutions. Phone book contacts and calendar events can be locallystored at a resource of the media resource center 530 and independentlyoperated from the aforementioned email systems, or they can be a subsetfeature and function of the email systems previously described. Userprofiles can also be synchronized. User profiles can used to identifyuser preferences, viewing habits, interests and biases, among otherthings.

When an update is detected in step 1004, the web server application 505can proceed to step 1006 to identify the source of the change. A changein content can be detected as a result of a change in timestampsassociated with the content, file size changes in the content, metadataupdates in the content, or the presence of content in one device and notanother. Other suitable version detection or tracking techniques arecontemplated by the present disclosure. The source a content update canbe a user that has modified content in the mobile device server 504, oran act by the same user or another user modifying content in the one ormore resources accessible to the mobile device server 504. For example,a user of the mobile device server 504 may have captured video,pictures, or recorded audio in the mobile device server 504 which one ofthe resources accessible to the mobile device server 504 (e.g., mediaprocessor 506) does not have stored in its memory. The mobile deviceserver 504 can be operable to scan in step 1002 each resource and candetermine from the scanning process that it has content not present inthe other resources or vice-versa, or that a more recent version ofcontent is present in the mobile device server 504 or vice-versa.

When it detects a content update that originates from the mobile deviceserver 504, the mobile device server 504 proceeds to step 1008 where itsynchronizes its content with a detected resource lacking the updatedcontent by transmitting a copy of the updated content to the detectedresource. If, on the other hand, content updates are detected at aresource such as when the resource has new or more recent content, thenthe resource with the content update synchronizes its content in step1010 with the mobile device server 504 by transmitting a copy of theupdated content to the mobile device server 504.

Once content has been synchronized between the mobile device server 504and a particular resource, the mobile device server 504 proceeds to step1012 where it determines if other synchronization updates are required.A determination of all the resources having content updates can be madeas a consequence of steps 1002 and 1004, while in steps 1006-1010 asynchronization update takes place between the mobile device server 504and one of the resources. At step 1012, if more than one content updateis detected, the mobile device server 504 can proceed to step 1006 andrepeat the synchronization process with the next resource. The mobiledevice server 504 can continue the synchronization process from step1012 until the mobile device server 504 and the resources havesynchronized content.

Method 1000 provides among other things the ability for a user of themobile device server 504 to interchange between the resources of themedia resource center 530 and the mobile device server 504 withoutconcern that unsynchronized content would cause confusion or issues. Forexample, if a user reads email at a resource, the read condition stateof the email can be synchronized with the mobile device server 504 sothat the user is not burden with email messages that have already beenread. This can be useful in POP email systems that do not supportsynchronization across multiple platforms or instances of email clients.Similarly, a user can add new content or update existing content at themobile device server 504 or a resource and know that method 1000 wouldeventually synchronize the mobile device server 504 and the resource.This allows users to take their experience with them when roaming withthe mobile device server 504.

The present disclosure contemplates a mobile device server 504 thatamong other things can be programmed with a pairing key that can be usedto identify grades of services that a user of the mobile device sever504 has subscribed to. Additional pairing keys can be used to enable aservice provider to manage which applications and/or content a mobiledevice server 504 can be used with the resources of a media resourcecenter 530. The mobile device server 504 can be adapted to detect mediaresources managed by the resource control manager 518 and can be furtheradapted to acquire access to all or a portion of such resourcesaccording to the illustrative embodiments of methods 800-900 of FIGS.8-9. By mobilizing a web server application 505 by way of a mobiledevice server 504 as described above it may no longer be necessary formedia resources to be managed solely by way of infrastructure devicessuch as those shown in FIGS. 1-3, which are generally not portable. Asresult, infrastructure resources can be preserved thereby reducinginfrastructure costs.

Upon reviewing the aforementioned embodiments, it would be evident to anartisan with ordinary skill in the art that said embodiments can bemodified, reduced, or enhanced without departing from the scope andspirit of the claims described below. For example, methods 800-900 canbe adapted so that a mobile device server 504 can communicate with othermobile device servers 504. In this configuration, one of the mobiledevice servers 504 can function in part as the resource control manager518 in a master-slave configuration. The mobile device server 504operating as the resource control manager 518 can assign and/or delegateresources according to the service grade of the requesting mobile deviceserver 504.

In one embodiment, FIG. 5 can be adapted so that the resource controlmanager 518 is located remotely from building 502. In anotherembodiment, the resource control manager 518 can be an integral part ofremote server 512, or can operate from a computing device that iscommunicatively coupled to the remote server 512. In another embodiment,the resource control manager 518 can be adapted to offer the mobiledevice server 504 resources which are remote from a vicinity of building502. The remote resources can be in one or more other buildings ordistributed in the networks of FIGS. 1-3. The remote resources caninclude without limitation computing resources, storage resources, mediaprocessing resources, or other resources which can be made accessible toa mobile device server 504. In yet another embodiment, the resourcecontrol manager 518 can be adapted to communicate with other resourcecontrol managers 518 located in the networks of FIGS. 1-3 or otherresidential or commercial buildings remote from building 502. In thisembodiment, a resource control manager 518 can request and/or exchangeresources with other resource control managers 518 to expand the reachand access of resources made available to mobile device servers 514.

Method 1000 can be adapted to take place when the mobile device server504 is remote from building 502. Hence, when a user initiates a contentupdate at the mobile device server 504, a corresponding resource inbuilding 502 can be updated by way of the resource control manager 518,and vice-versa. In this embodiment, the user of the mobile device server504 can experience the availability of content upon entering thepremises of building 502 without delay.

In yet another embodiment, the resource control manager 518 may not haveactual content to be synchronized with the mobile device server 504. Theresource control manager 518 may, however, have current informationdealing with content in the media resource center 530 or content storedremotely from building 502 but which is nonetheless considered part ofthe resources of the media resource center 530. For instance, duringsynchronization of the mobile device server 504, the resource controlmanager 518 may inform the mobile device server 504 that updates havebeen made to a content repository and provide the associated locationinformation (e.g. URL) for this new or updated content. Hence, theresource control manager 518 can serve a role in providing usefulinformation to the mobile device server 504 to initiate asynchronization cycle.

Other suitable modifications can be applied to the present disclosurewithout departing from the scope of the claims below. Accordingly, thereader is directed to the claims section for a fuller understanding ofthe breadth and scope of the present disclosure.

FIG. 11 depicts an exemplary diagrammatic representation of a machine inthe form of a computer system 1100 within which a set of instructions,when executed, may cause the machine to perform any one or more of themethodologies discussed above. The machine can operate, for example, asthe mobile device server 504, the media processor 506, the gateway 508,the remote server 512, the billing system 542, the content providersystem 546, or combinations thereof as described above. In someembodiments, the machine operates as a standalone device. In someembodiments, the machine may be connected (e.g., using a network) toother machines. In a networked deployment, the machine may operate inthe capacity of a server or a client user machine in server-client usernetwork environment, or as a peer machine in a peer-to-peer (ordistributed) network environment.

The machine may comprise a server computer, a client user computer, apersonal computer (PC), a tablet PC, a laptop computer, a desktopcomputer, a control system, a network router, switch or bridge, or anymachine capable of executing a set of instructions (sequential orotherwise) that specify actions to be taken by that machine. It will beunderstood that a device of the present disclosure includes broadly anyelectronic device that provides voice, video or data communication.Further, while a single machine is illustrated, the term “machine” shallalso be taken to include any collection of machines that individually orjointly execute a set (or multiple sets) of instructions to perform anyone or more of the methodologies discussed herein.

The computer system 1100 may include a processor 1102 (e.g., a centralprocessing unit (CPU), a graphics processing unit (GPU, or both), a mainmemory 1104 and a static memory 1106, which communicate with each othervia a bus 1108. The computer system 1100 may further include a videodisplay unit 1110 (e.g., a liquid crystal display (LCD), a flat panel, asolid state display, or a cathode ray tube (CRT)). The computer system1100 may include an input device 1112 (e.g., a keyboard), a cursorcontrol device 1114 (e.g., a mouse), a disk drive unit 1116, a signalgeneration device 1118 (e.g., a speaker or remote control) and a networkinterface device 1120.

The disk drive unit 1116 may include a machine-readable medium 1122 onwhich is stored one or more sets of instructions (e.g., software 1124)embodying any one or more of the methodologies or functions describedherein, including those methods illustrated above. The instructions 1124may also reside, completely or at least partially, within the mainmemory 1104, the static memory 1106, and/or within the processor 1102during execution thereof by the computer system 1100. The main memory1104 and the processor 1102 also may constitute machine-readable media.

Dedicated hardware implementations including, but not limited to,application specific integrated circuits, programmable logic arrays andother hardware devices can likewise be constructed to implement themethods described herein. Applications that may include the apparatusand systems of various embodiments broadly include a variety ofelectronic and computer systems. Some embodiments implement functions intwo or more specific interconnected hardware modules or devices withrelated control and data signals communicated between and through themodules, or as portions of an application-specific integrated circuit.Thus, the example system is applicable to software, firmware, andhardware implementations.

In accordance with various embodiments of the present disclosure, themethods described herein are intended for operation as software programsrunning on a computer processor. Furthermore, software implementationscan include, but not limited to, distributed processing orcomponent/object distributed processing, parallel processing, or virtualmachine processing can also be constructed to implement the methodsdescribed herein.

The present disclosure contemplates a machine readable medium containinginstructions 1124, or that which receives and executes instructions 1124so that a device connected to a network environment 1126 can send orreceive voice, video or data, and to communicate over the network 1126using the instructions 1124. The instructions 1124 may further betransmitted or received over a network 1126 via the network interfacedevice 1120.

While the machine-readable medium 1122 is shown in an example embodimentto be a single medium, the term “machine-readable medium” should betaken to include a single medium or multiple media (e.g., a centralizedor distributed database, and/or associated caches and servers) thatstore the one or more sets of instructions. The term “machine-readablemedium” shall also be taken to include any medium that is capable ofstoring, or encoding a set of instructions for execution by the machineand that cause the machine to perform any one or more of themethodologies of the present disclosure.

The term “machine-readable medium” shall accordingly be taken toinclude, but not be limited to: solid-state memories such as a memorycard or other package that houses one or more read-only (non-volatile)memories, random access memories, or other re-writable (volatile)memories; and magneto-optical or optical medium such as a disk or tape.Accordingly, the disclosure is considered to include any one or more ofa machine-readable medium, as listed herein and including art-recognizedequivalents and successor media, in which the software implementationsherein are stored.

Although the present specification describes components and functionsimplemented in the embodiments with reference to particular standardsand protocols, the disclosure is not limited to such standards andprotocols. Each of the standards for Internet and other packet switchednetwork transmission (e.g., TCP/IP, UDP/IP, HTML, HTTP) representexamples of the state of the art. Such standards are periodicallysuperseded by faster or more efficient equivalents having essentiallythe same functions. Accordingly, replacement standards and protocolshaving the same functions are considered equivalents.

The illustrations of embodiments described herein are intended toprovide a general understanding of the structure of various embodiments,and they are not intended to serve as a complete description of all theelements and features of apparatus and systems that might make use ofthe structures described herein. Many other embodiments will be apparentto those of skill in the art upon reviewing the above description. Otherembodiments may be utilized and derived therefrom, such that structuraland logical substitutions and changes may be made without departing fromthe scope of this disclosure. Figures are also merely representationaland may not be drawn to scale. Certain proportions thereof may beexaggerated, while others may be minimized. Accordingly, thespecification and drawings are to be regarded in an illustrative ratherthan a restrictive sense.

Such embodiments of the inventive subject matter may be referred toherein, individually and/or collectively, by the term “invention” merelyfor convenience and without intending to voluntarily limit the scope ofthis application to any single invention or inventive concept if morethan one is in fact disclosed. Thus, although specific embodiments havebeen illustrated and described herein, it should be appreciated that anyarrangement calculated to achieve the same purpose may be substitutedfor the specific embodiments shown. This disclosure is intended to coverany and all adaptations or variations of various embodiments.Combinations of the above embodiments, and other embodiments notspecifically described herein, will be apparent to those of skill in theart upon reviewing the above description. The Abstract of the Disclosureis provided with the understanding that it will not be used to interpretor limit the scope or meaning of the claims. In addition, in theforegoing Detailed Description, it can be seen that various features aregrouped together in a single embodiment for the purpose of streamliningthe disclosure. This method of disclosure is not to be interpreted asreflecting an intention that the claimed embodiments require morefeatures than are expressly recited in each claim. Rather, as thefollowing claims reflect, inventive subject matter lies in less than allfeatures of a single disclosed embodiment. Thus the following claims arehereby incorporated into the Detailed Description, with each claimstanding on its own as a separately claimed subject matter.

What is claimed is:
 1. A mobile device, comprising: a memory that storesinstructions; and a controller coupled to the memory, wherein thecontroller, responsive to executing the instructions, performsoperations comprising: detecting a resource control manager when roaminginto a communication zone of the resource control manager; transmittinga pairing key to the resource control manager to enable communicationswith the resource control manager; establishing communications with theresource control manager responsive to a validation of the pairing key;detecting differences between content stored in the resource controlmanager and content stored in the mobile device as content differences;synchronizing differences between content stored in the resource controlmanager and content stored in the mobile device; and initiating asoftware application to be executed at the mobile device, wherein theinitiating causes a remote server to identify the resource controlmanager according to header information from a gateway that transmits amessage, wherein the message comprises the header information, whereinthe header information comprises an internet address assigned to thegateway, and wherein the resource control manager enables communicationswith the mobile device responsive to authenticating the mobile deviceaccording to the pairing key.
 2. The mobile device of claim 1, whereinthe operations further comprise identifying a subscriber accountassociated with the pairing key.
 3. The mobile device of claim 2,wherein the operations further comprise: determining from the subscriberaccount that synchronization services have been authorized for themobile device; and enabling the mobile device to synchronize the contentin the mobile device with the content stored in a resource of theresource control manager.
 4. The mobile device of claim 1, wherein theresource control manager comprises a plurality of resources, and whereinthe message comprises an identifier of the software application, andwherein the operations further comprise: scanning each of the pluralityof resources for a content update; and synchronizing differences betweenthe content stored in the mobile device and the content updates detectedat a resource of the plurality of resources.
 5. The mobile device ofclaim 1, wherein the content differences comprise changes in mediafiles, changes in email messages, changes in phone book contacts,changes in calendar entries, or changes in user profiles.
 6. The mobiledevice of claim 1, wherein the operations further comprise: detecting aresource control manager; and receiving authorization from the resourcecontrol manager to synchronize content stored in the mobile device withcontent stored in a resource selected by the resource control manageraccording to the pairing key.
 7. The mobile device of claim 6, whereinthe resource comprises a set-top box, a computing device, a storagedevice, or a gaming console.
 8. The mobile device of claim 1, whereinthe software application comprises a web server application.
 9. Themobile device of claim 8, wherein the web server application comprises ahypertext transfer protocol server application, and wherein the softwareapplication comprises a media application, a gaming application, aproductivity application, or a combination thereof.
 10. The mobiledevice of claim 1, wherein the message transmitted to the remote servercomprises a uniform resource locator with a plurality of descriptorsthat identify the software application, and wherein the gateway insertsan internet protocol address of the gateway into the message transmittedto the remote server.
 11. The mobile device of claim 1, whereincommunications between the mobile device and the resource controlmanager conform to an extensible markup language or a multimediaretrieval markup language.
 12. The mobile device of claim 1, wherein theresource control manager performs operations comprising: detecting themobile device and a second mobile device; detecting that the mobiledevice and the second mobile device are requesting a same resourcemanaged by the resource control manager; and arbitrating between themobile device and the second mobile device an assignment of the sameresource being requested by the mobile device and the second mobiledevice.
 13. The mobile device of claim 1, wherein the operations furthercomprise: submitting to the resource control manager a request todelegate management of a resource under control of the resource controlmanager to the mobile device; and receiving from the resource controlmanager an acceptance to the request in response to the resource controlmanager determining that the pairing key authorizes the mobile device tomanage the resource.
 14. The mobile device of claim 1, wherein themobile device comprises a cellular telephone or a cordless telephone.15. A machine-readable storage device, comprising instructions, whereinresponsive to executing the instructions, a processor of a mobile deviceserver performs operations comprising: detecting a resource controlmanager while roaming in a communication zone of the resource controlmanager; transmitting a pairing key to the resource control manager;receiving authorization from the resource control manager to synchronizedifferences between content stored in the resource control manager andcontent stored in the mobile device server responsive to the resourcecontrol manager validating the pairing key, wherein the authorizationcomprises an internet protocol address and an identifier of a softwareapplication, and wherein the internet protocol address enables a remoteserver to identify the resource control manager; and initiating thesoftware application to be executed at the mobile device serverresponsive to the receiving authorization, wherein the receiving theauthorization causes the remote server to identify the resource controlmanager according to header information from a gateway, wherein theauthorization further comprises the header information, wherein theheader information comprises an internet address assigned to thegateway, and wherein the resource control manager enables communicationswith the resource control manager responsive to authenticating theresource control manager according to the pairing key.
 16. Themachine-readable storage device of claim 15, wherein the resourcecontrol manager performs operations comprising: identifying a subscriberaccount associated with the pairing key; determining from the subscriberaccount that synchronization services have been authorized for themobile device server; and enabling the mobile device server tosynchronize the content in the mobile device server with content storedin a resource of the resource control manager.
 17. The machine-readablestorage device of claim 16, wherein the operations further comprise:transmitting a second pairing key to the resource control manager toenable execution of a second software application that utilizes aresource of the resource control manager; and receiving authorization toexecute the second software application responsive to the resourcecontrol manager validating the second pairing key.
 18. Themachine-readable storage device of claim 17, wherein the second softwareapplication comprises a media application, a gaming application, aproductivity application, or any combination thereof.
 19. A resourcecontrol manager, comprising: a memory to store instructions; and acontroller coupled to the memory, wherein responsive to executing theinstructions, the controller performs operations comprising: managing aplurality of resources communicatively coupled to the resource controlmanager; receiving an identifier from a mobile device server;identifying a service grade from the identifier; selected a resourcefrom the plurality of resources according to the service grade; enablingthe mobile device server to synchronize content stored in the mobiledevice server with content stored in the resource; receiving a messagefrom a remote server; and initiating a software application identifiedby the message received from the remote server, wherein the remoteserver identifies a resource control manager according to headerinformation from a gateway that transmits the message, wherein themessage comprises the header information, and wherein the headerinformation comprises an internet address assigned to the gateway, andwherein the resource control manager enables communications with theresource control manager responsive to authenticating the resourcecontrol manager according to the identifier.
 20. The resource controlmanager of claim 19, wherein the resource control manager comprises aset top box, wherein the mobile device server comprises a cellulartelephone, and wherein the message comprises an internet protocoladdress that identifies the software application to be initiated by themobile device server.